package test

import (
	"context"
	"fmt"

	"go.mongodb.org/mongo-driver/mongo"
)

type Add1 struct {
	Id   int
	Text string
}

func (a1 *Add1) Add(mongo *mongo.Database, ctx context.Context) error {

	result, err := mongo.Collection("test").InsertOne(ctx, a1)
	fmt.Println(result.InsertedID)
	return err

}

type Add2 struct {
	Id       int
	TextList []string
}

func (a2 *Add2) Add(mongo *mongo.Database, ctx context.Context) error {
	result, err := mongo.Collection("test").InsertOne(ctx, a2)
	fmt.Println(result.InsertedID)
	return err
}

type Add3 struct {
	Id       int
	Add1List []Add1
}

func (a3 *Add3) Add(mongo *mongo.Database, ctx context.Context) error {
	result, err := mongo.Collection("test").InsertOne(ctx, a3)
	fmt.Println(result.InsertedID)
	return err
}

// 插入多条数据
func AddMany(mongo *mongo.Database, ctx context.Context, data ...interface{}) error {
	result, err := mongo.Collection("test").InsertMany(ctx, data)
	fmt.Println(result.InsertedIDs...)
	return err
}
